﻿using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _convocacao : System.Web.UI.Page
{
    int Id_Empresa;
    DateTime? dtConvocacao = null;

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
         {  
            //CarregaComboEmpresa()
         }        
    }

    protected void cboEmpresa_SelectedIndexChanged(object sender, EventArgs e)
    {
        if (cboEmpresa.SelectedValue != "")
        {
            pnlTurmas.Visible = true;
            grdConvocados.Visible = true;
            CarregaDadosEmpresa(Convert.ToInt32(cboEmpresa.SelectedValue));
        }        
    }

    protected void CarregaDadosEmpresa(int Id_Empresa)
    {
        SqlConnection conexaoIntranet = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);
        SqlDataReader drContato;        
        try
        {
            if (conexaoIntranet.State != ConnectionState.Open)
                conexaoIntranet.Open();
            string instrucao = "";
            instrucao = "select ResponsavelCadastro, Email, Fone from BKCamaraEmpresas where (Id_Empresa = " + Id_Empresa + ")";
            SqlCommand pesquisaEvento = new SqlCommand(instrucao, conexaoIntranet);
            drContato = pesquisaEvento.ExecuteReader();
            if (drContato.HasRows)
            {
                drContato.Read();
                txtNomeContato.Text = drContato["ResponsavelCadastro"].ToString();
                txtEmailContato.Text = drContato["Email"].ToString();
                txtFoneContato.Text = drContato["Fone"].ToString();
            }
            drContato.Close();
        }
        finally
        {
            conexaoIntranet.Close();
        }
    }

    protected void grdConvocados_SelectedIndexChanged(object sender, EventArgs e)
    {
        //pnlAlterarConv.Visible = true;
        CarregaDadosConvocado(grdConvocados.SelectedValue.ToString());
    }

    protected void CarregaDadosConvocado(string ConsultaN)
    {
        SqlConnection conexaoIntranet = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);
        SqlDataReader drDadosConvocado;
       
        try
        {
            if (conexaoIntranet.State != ConnectionState.Open)
                conexaoIntranet.Open();
            string instrucao = "";
            instrucao = "SELECT * FROM BKCamaraConsultas WHERE (ConsultaN = " + ConsultaN + ")";
            SqlCommand pesquisaTurma = new SqlCommand(instrucao, conexaoIntranet);
            drDadosConvocado = pesquisaTurma.ExecuteReader();
            if (drDadosConvocado.HasRows)
            {
                drDadosConvocado.Read();
                lblCodConvocacao.Text = drDadosConvocado["ConsultaN"].ToString();
                if (drDadosConvocado["Compareceu"].ToString() == "1")
                {
                    rdbCompSim.Checked = false;
                    rdbCompNao.Checked = true;
                }
                else
                {
                    rdbCompSim.Checked = true;
                    rdbCompNao.Checked = false;
                }
                if (drDadosConvocado["Convocado"].ToString() == "1")
                {
                    rdbConvSim.Checked = false;
                    rdbConvNao.Checked = true;
                }
                else
                {
                    rdbConvSim.Checked = true;
                    rdbConvNao.Checked = false;
                }
                txtMotivo.Text = drDadosConvocado["Motivo"].ToString();
                DtConvocacao.Date = Convert.ToDateTime(drDadosConvocado["Data_Convocacao"].ToString());
                Session["CNPJ"] = drDadosConvocado["CNPJ"].ToString();
                Session["CPF"] = drDadosConvocado["CPF"].ToString();
            }
            drDadosConvocado.Close();
        }
        finally
        {
            conexaoIntranet.Close();
        }
    }
   
    protected void CarregaDadosDesconvocado(string ConsultaN)
    {
        SqlConnection conexaoIntranet = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);
        SqlDataReader drDadosConvocado;

        try
        {
            if (conexaoIntranet.State != ConnectionState.Open)
                conexaoIntranet.Open();
            string instrucao = "";
            instrucao = "SELECT * FROM BKCamaraConsultas WHERE (ConsultaN = " + ConsultaN + ")";
            SqlCommand pesquisaTurma = new SqlCommand(instrucao, conexaoIntranet);
            drDadosConvocado = pesquisaTurma.ExecuteReader();
            if (drDadosConvocado.HasRows)
            {
                drDadosConvocado.Read();
                lblCodConvocacao.Text = drDadosConvocado["ConsultaN"].ToString();
                if (drDadosConvocado["Compareceu"].ToString() == "1")
                {
                    rdbCompSimDesc.Checked = false;
                    rdbCompNoDesc.Checked = true;
                }
                else
                {
                    rdbCompSimDesc.Checked = true;
                    rdbCompNoDesc.Checked = false;
                }
                if (drDadosConvocado["Convocado"].ToString() == "1")
                {
                    rdbConvSimDesconv.Checked = false;
                    rdbConvNoDesconv.Checked = true;
                }
                else
                {
                    rdbConvSimDesconv.Checked = true;
                    rdbConvNoDesconv.Checked = false;
                }
                txtMotivoDesc.Text = drDadosConvocado["Motivo"].ToString();
                Dt_Desconv.Date = Convert.ToDateTime(drDadosConvocado["Data_Convocacao"].ToString());
                Session["CNPJ"] = drDadosConvocado["CNPJ"].ToString();
                Session["CPF"] = drDadosConvocado["CPF"].ToString();
            }
            drDadosConvocado.Close();
        }
        finally
        {
            conexaoIntranet.Close();
        }

    }

    protected void btnAlterar_Click(object sender, System.Web.UI.ImageClickEventArgs e)
    {
        try
        {
            if (InsereConvocacao())
            {
                LimpaCamposConvocado();
                grdConvocados.DataBind();
                iStatus.ImageUrl = "~/figuras/icoOK.png";
                lMensagem.Text = "<strong>Registro alterado com sucesso</strong>";
            }
        }
        catch (Exception erro)
        {
            iStatus.ImageUrl = "~/figuras/icoAtencao.png";
            lMensagem.ForeColor = System.Drawing.Color.Red;
            lMensagem.Text = "Falha na alteração do registro.<br />Erro: " + erro.Message;
        }
        ASPxPopupControl1.ShowOnPageLoad = true;
    }

    protected void btnAltDesc_Click(object sender, ImageClickEventArgs e)
    {
        try
        {
            if (InsereDesconvocacao())
            {
                LimpaCamposDesconvocado();
                grdConvocados.DataBind();
                iStatus.ImageUrl = "~/figuras/icoOK.png";
                lMensagem.Text = "<strong>Registro alterado com sucesso</strong>";
            }
        }
        catch (Exception erro)
        {
            iStatus.ImageUrl = "~/figuras/icoAtencao.png";
            lMensagem.ForeColor = System.Drawing.Color.Red;
            lMensagem.Text = "Falha na alteração do registro.<br />Erro: " + erro.Message;
        }
        ASPxPopupControl1.ShowOnPageLoad = true;
    }

    //protected bool AtualizaConvocacao()
    //{
    //    bool selecaoAlterada = false;
    //    string Compareceu;
    //    string Convocado;

    //    if (rdbCompSim.Checked == true)
    //        Compareceu = "1";
    //    else
    //        Compareceu = "0";

    //    if (rdbConvSim.Checked == true)
    //        Convocado = "1";
    //    else
    //        Convocado = "0";

    //    SqlConnection conexaoIntranet = new SqlConnection(ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);
    //    try
    //    {
    //        if (conexaoIntranet != null && conexaoIntranet.State != ConnectionState.Open)
    //            conexaoIntranet.Open();
    //        string instrucao = "UPDATE BKCamaraConsultas SET Compareceu = '" + Compareceu + "', Convocado = '" + Convocado + "', Motivo = '" + txtMotivo.Text + "', Data_Convocacao = '" + DtConvocacao.Date.ToString("MM-dd-yyyy") + "' WHERE ConsultaN = " + lblCodConvocacao.Text;
    //        Response.Write(instrucao);
    //        SqlCommand AlteraSelecao = new SqlCommand(instrucao, conexaoIntranet);
    //        selecaoAlterada = (AlteraSelecao.ExecuteNonQuery() > 0);
    //    }
    //    finally
    //    {
    //        if (conexaoIntranet.State == ConnectionState.Open)
    //            conexaoIntranet.Close();
    //    }
    //    return selecaoAlterada;

    //}

    protected bool InsereConvocacao()
    {
        bool ConvocadoInserido = false;
        string Data_Cadastro = DateTime.Now.ToString(@"dd/MM/yyyy");
        string Compareceu;
        string Convocado;

        if (rdbCompSim.Checked == true)
            Compareceu = "1";
        else
            Compareceu = "0";

        if (rdbConvSim.Checked == true)
            Convocado = "1";
        else
            Convocado = "0";

        SqlConnection conexaoIntranet = new SqlConnection(ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);

        try
        {
            if (conexaoIntranet != null && conexaoIntranet.State != ConnectionState.Open)
                conexaoIntranet.Open();
            string instrucao = "INSERT INTO BKCamaraConsultas (CNPJ, CPF, Compareceu, Convocado, Motivo, Data_Convocacao, usuario, data_cadastro) VALUES ('" + Session["CNPJ"].ToString() + "','" + Session["CPF"].ToString() + "','" + Compareceu + "','" + Convocado + "','" + txtMotivo.Text + "','" + DtConvocacao.Date.ToString("MM-dd-yyyy") + "','" + Session["login"].ToString() + "','" + Convert.ToDateTime(Data_Cadastro) + "')";
            //Response.Write(instrucao);
            SqlCommand insereEvento = new SqlCommand(instrucao, conexaoIntranet);
            ConvocadoInserido = (insereEvento.ExecuteNonQuery() > 0);            
        }
        finally
        {
            if (conexaoIntranet.State == ConnectionState.Open)
                conexaoIntranet.Close();
        }

        return ConvocadoInserido;
    }

    protected bool InsereDesconvocacao()
    {
        bool EventoInserido = false;
        string Data_Cadastro = DateTime.Now.ToString(@"dd/MM/yyyy");
        string Compareceu;
        string Convocado;

        if (rdbCompSim.Checked == true)
            Compareceu = "1";
        else
            Compareceu = "0";

        if (rdbConvSim.Checked == true)
            Convocado = "1";
        else
            Convocado = "0";

        SqlConnection conexaoIntranet = new SqlConnection(ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);

        try
        {
            if (conexaoIntranet != null && conexaoIntranet.State != ConnectionState.Open)
                conexaoIntranet.Open();
            string instrucao = "INSERT INTO BKCamaraConsultas (CNPJ, CPF, Compareceu, Convocado, Motivo, Data_Convocacao, usuario, data_cadastro) VALUES ('" + Session["CNPJ"].ToString() + "','" + Session["CPF"].ToString() + "','" + Compareceu + "','" + Convocado + "','" + txtMotivoDesc.Text + "','" + Dt_Desconv.Date.ToString("MM-dd-yyyy") + "','" + Session["login"].ToString() + "','" + Convert.ToDateTime(Data_Cadastro) + "')";
            //Response.Write(instrucao);
            SqlCommand insereEvento = new SqlCommand(instrucao, conexaoIntranet);
            EventoInserido = (insereEvento.ExecuteNonQuery() > 0);            
        }
        finally
        {
            if (conexaoIntranet.State == ConnectionState.Open)
                conexaoIntranet.Close();
        }

        return EventoInserido;
    }

    //protected bool AtualizaDesconvocacao()
    //{
    //    bool selecaoAlterada = false;
    //    string Compareceu;
    //    string Convocado;

    //    if (rdbCompSim.Checked == true)
    //        Compareceu = "1";
    //    else
    //        Compareceu = "0";

    //    if (rdbConvSim.Checked == true)
    //        Convocado = "1";
    //    else
    //        Convocado = "0";

    //    SqlConnection conexaoIntranet = new SqlConnection(ConfigurationManager.ConnectionStrings["conexao_intranet"].ConnectionString);
    //    try
    //    {
    //        if (conexaoIntranet != null && conexaoIntranet.State != ConnectionState.Open)
    //            conexaoIntranet.Open();
    //        string instrucao = "UPDATE BKCamaraConsultas SET Compareceu = '" + Compareceu + "', Convocado = '" + Convocado + "', Motivo = '" + txtMotivo.Text + "', Data_Convocacao = '" + DtConvocacao.Date.ToString("MM-dd-yyyy") + "' WHERE ConsultaN = " + lblCodConvocacao.Text;
    //        Response.Write(instrucao);
    //        SqlCommand AlteraSelecao = new SqlCommand(instrucao, conexaoIntranet);
    //        selecaoAlterada = (AlteraSelecao.ExecuteNonQuery() > 0);
    //    }
    //    finally
    //    {
    //        if (conexaoIntranet.State == ConnectionState.Open)
    //            conexaoIntranet.Close();
    //    }
    //    return selecaoAlterada;

    //}

    protected void LimpaCamposConvocado()
    {
        rdbCompNao.Checked = false;
        rdbCompSim.Checked = false;
        rdbConvNao.Checked = false;
        rdbConvSim.Checked = false;
        txtMotivo.Text = "";
        DtConvocacao.Value = null;        
    }

    protected void LimpaCamposDesconvocado()
    {
        rdbCompNao.Checked = false;
        rdbCompSim.Checked = false;
        rdbConvNao.Checked = false;
        rdbConvSim.Checked = false;
        txtMotivo.Text = "";
        DtConvocacao.Value = null;
    }

   protected void grdConvocados_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            Label lblConvocado = (Label) e.Row.FindControl("lblConvocado");
            LinkButton lnkConvocar = (LinkButton)e.Row.FindControl("lnkConvocar");
            LinkButton lnkDesc = (LinkButton)e.Row.FindControl("lnkDesc");
            if (lblConvocado.Text != "")
            {
                if (lblConvocado.Text == "False")
                {
                    lblConvocado.Text = "Não";
                    lnkConvocar.Visible = true;
                    lnkDesc.Visible = false;
                    //CarregaDadosConvocado(grdConvocados.SelectedValue.ToString());
                }
                else
                {
                    lblConvocado.Text = "Sim";
                    lnkConvocar.Visible = false;
                    lnkDesc.Visible = true;
                    //CarregaDadosDesconvocado(grdConvocados.SelectedValue.ToString());
                }
            }
            
        }
    }

   protected void lnkConvocar_Click(Object sender, EventArgs e)
   {
       pnlAlterarConv.Visible = true;
       pnlAlterarDesconv.Visible = false;
   }

   protected void lnkDesc_Click(Object sender, EventArgs e)
   {
       pnlAlterarDesconv.Visible = true;
       pnlAlterarConv.Visible = false; 
   }
   
}

    
    